Traditionally, storage provided in a storage cluster is made reliable against hardware failure through erasure coding of stored objects. Although erasure coding enjoys the benefit of a smaller storage footprint and less overhead for similar level of protection against media failures (highly efficient), it represents a challenge when the data it contains must be updated, particularly in situations where data must be overwritten or inserted at a point other than at the end. Current implementations require copying of large amounts of data to construct the resulting, modified object. Such copying can be slow, as well as requiring large amounts of memory or storage.
Accordingly, improved techniques are desired for use with storage clusters in order to address the above problems.